package test;

import java.util.ArrayList;
import java.util.List;

import xmlparsers.SystemParser;

import bean.srv.ListaPreciosSRV;
import bean.srv.PaisSRV;
import bean.srv.ProveedorSRV;
import bean.srv.RodamientosSRV;
import dominio.ListaPrecios;
import dominio.Pais;
import dominio.Proveedor;
import dominio.Rodamiento;
import exceptions.InsertException;

public class DatosPruebaCPR {

	public static void cargarDatos(ProveedorSRV provSVR, PaisSRV paisSVR,
			ListaPreciosSRV listaPreciosSVR, RodamientosSRV rodamientoSVR) {

		crearPaises(paisSVR);		
		crearProveedores(provSVR,paisSVR);
		crearListasDePrecios(listaPreciosSVR,rodamientoSVR,provSVR);
	}	

	private static void crearPaises(PaisSRV paisSVR) {

		List<Pais> paises = new ArrayList<Pais>();

		Pais p = new Pais();
		p.setNombre("Argentina");
		p.setSigla("AR");
		paises.add(p);

		p = new Pais();
		p.setNombre("Chile");
		p.setSigla("CL");
		paises.add(p);

		p = new Pais();
		p.setNombre("Brazil");
		p.setSigla("BR");
		paises.add(p);

		for (int i = 0; i < paises.size(); i++) {
			paisSVR.agregarPais(paises.get(i));
		}
	}
	
	private static void crearProveedores(ProveedorSRV provSVR,PaisSRV paisSRV){
		Pais pais1 = paisSRV.buscarPais("Argentina");
		Pais pais2 = paisSRV.buscarPais("Brazil");
		
		List<Proveedor> proveedores = new ArrayList<Proveedor>();
		
		Proveedor p = new Proveedor();
		p.setCuit("30-123456789-1");
		p.setOrigen(pais1);
		p.setRazonSocial("Rodamientos Pepe");
		
		proveedores.add(p);
		
		p = new Proveedor();
		p.setCuit("30-123456789-5");
		p.setOrigen(pais2);
		p.setRazonSocial("La Roderia SA");
		
		proveedores.add(p);
		
		p = new Proveedor();
		p.setCuit("30-123499999-5");
		p.setOrigen(pais1);
		p.setRazonSocial("Rod A Miento SRL");
		
		proveedores.add(p);
		
		p = new Proveedor();
		p.setCuit("2788899988");
		p.setOrigen(pais1);
		p.setRazonSocial("PETY ASITAPAIS S.R.L.");
		
		proveedores.add(p);
		
		for (int i = 0; i < proveedores.size(); i++) {
			try {
				provSVR.agregarProveedor(proveedores.get(i));
			} catch (InsertException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
		
	}
	private static void crearListasDePrecios(ListaPreciosSRV listaPreciosSVR,
			RodamientosSRV rodamientoSVR, ProveedorSRV provSVR) {
		ListaPrecios lp = SystemParser.getInstance().parseListasPrecios(
				"xmls/lista_precios_datos.xml");
		listaPreciosSVR.newListaPrecios(lp);
		
		
		lp = SystemParser.getInstance().parseListasPrecios(
				"xmls/lista_precios_datos2.xml");
		listaPreciosSVR.newListaPrecios(lp);
		
		lp = SystemParser.getInstance().parseListasPrecios(
				"xmls/lista_precios_datos3.xml");
		listaPreciosSVR.newListaPrecios(lp);
		
	}
}
